Файл: TestBotanica.txt

Дата: 10.04.2014

1: * Интерпретатор тестов
2: * Программа КОНЦЕПТ, 21.09.2010, www.gendoc.ru 
3:
4: *  Инициация теста
5: Инициализация_базы_фактов_теста
6: присвоить BAL 0 ОШИБОЧНЫЕ_ВОПРОСЫ {} НОМЕР_ТЕСТА 3
7: печать "Протокол тестирования. Сегодня [$Сегодня]." ''
8: факт взять номер_факта (факт сопоставитьСПервым $результат "r;t;[НОМЕР_ТЕСТА];[?];[?]" )
9: список сопоставить _ [номер_факта] "[?];[?];[?];[?КОЛИЧЕСТВО_ВОПРОСОВ];[?ОПИСАНИЕ_ТЕСТА]"
10: Сообщение "Тест N [НОМЕР_ТЕСТА][ОПИСАНИЕ_ТЕСТА] [КОЛИЧЕСТВО_ВОПРОСОВ] вопросов."
11:
12: * Вопросы теста
13: для ТЕКУЩИЙ_ВОПРОС (список сгенерить $результат 1 [КОЛИЧЕСТВО_ВОПРОСОВ] )  
14:   Задать_вопрос
15: следующий
16:
17: * Определение результатов теста
18: печать '' 'Результат теста:'
19: Сообщение "Вы набрали [BAL] баллов."
20:
21: факт сопоставить n "r;r;[НОМЕР_ТЕСТА];BAL;[?];[?];[?]"
22: для [n]
23:   факт взять номер_факта [$объектЦикла]
24:   список сопоставить _ [номер_факта] "r;r;[НОМЕР_ТЕСТА];BAL;[?min];[?max];[?результат]"
25:   если [BAL] >= [min]
26:     если [BAL] <= [max]  
27:       Сообщение [результат]
28:     конец
29:   конец
30: следующий
31:
32: если [ОШИБОЧНЫЕ_ВОПРОСЫ]
33:   список упорядочитьЧисла ОШИБОЧНЫЕ_ВОПРОСЫ [ОШИБОЧНЫЕ_ВОПРОСЫ]
34:   Сообщение "Вы сделали ошибки в следующих вопросах [ОШИБОЧНЫЕ_ВОПРОСЫ]."
35: конец
36:
37: ****** ФУНКЦИИ ******
38:
39: функция Сообщение текст
40:   показать сообщение [текст]
41:   >[текст]
42: возврат
43:
44: функция Задать_вопрос
45:   факт сопоставитьМножество ВОПРОС "r;q;[НОМЕР_ТЕСТА];[ТЕКУЩИЙ_ВОПРОС];[?Result]"
46:   если [ВОПРОС]
47:   иначе
48:     Сообщение "Вопрос [ТЕКУЩИЙ_ВОПРОС] не найден."
49:   конец
50:   список голова ВОПРОС [ВОПРОС]
51:   строка сцепить ВОПРОС "[ТЕКУЩИЙ_ВОПРОС]/[КОЛИЧЕСТВО_ВОПРОСОВ]) " [ВОПРОС]
52:   >
53:   >[ВОПРОС]
54:
55:   факт сопоставитьМножество ВАРИАНТЫ_ОТВЕТОВ "r;v;[НОМЕР_ТЕСТА];[ТЕКУЩИЙ_ВОПРОС];[?Result];[?]"
56:
57:   для [ВАРИАНТЫ_ОТВЕТОВ]
58:     >   [$номерИтерации][$объектЦикла]
59:   следующий
60:
61:   если [ВАРИАНТЫ_ОТВЕТОВ]
62:     ввести меню1 ОТВЕТ [ВОПРОС] [ВАРИАНТЫ_ОТВЕТОВ]
63:     >Ваш ответ: [ОТВЕТ]
64:     
65:     факт сопоставить n "r;v;[НОМЕР_ТЕСТА];[ТЕКУЩИЙ_ВОПРОС];[ОТВЕТ];[?]"
66:     если [n] != {}  
67:       для [n]
68:         факт взять f [$объектЦикла]
69:         список взять ФОРМУЛА [f] 6
70:         если [ФОРМУЛА]
71:           список взять e1 [ФОРМУЛА] 1
72:           список взять e2 [ФОРМУЛА] 2
73:           строка сцепить ФОРМУЛА "вычислить + [e1] " '[' [e1] ']' " [e2]"
74:           выполнить [ФОРМУЛА]
75:         иначе
76:           множество или ОШИБОЧНЫЕ_ВОПРОСЫ [ОШИБОЧНЫЕ_ВОПРОСЫ] [ТЕКУЩИЙ_ВОПРОС]
77:         конец  
78:       следующий
79:     конец
80:
81:   иначе
82:     Сообщение "Для вопроса [ТЕКУЩИЙ_ВОПРОС] отсутствуют варианты ответов."
83:   конец  
84: возврат
85:
86:
87: функция Инициализация_базы_фактов_теста
88: *данные загрузить "[$текущийКаталог]Tests.txt"
89:
90: * Схемы фактов:
91: *s;t;номер_теста;количество_вопросов;описание_теста
92: *s;q;номер_теста;номер_вопроса;текст_вопроса
93: *s;v;номер_теста;номер_вопроса;текст_варианта_ответа;переменная;число_баллов
94: *s;r;номер_теста;переменная;нижняя_граница;верхняя_граница;текст
95:
96: факт добавить \
97: 'r;t;3;12;Общее знакомство с цветковыми растениями.' \
98: 'r;q;3;1;Биология - наука, изучающая:' \
99: 'r;v;3;1;живую и неживую природу;' \
100: 'r;v;3;1;живую природу;{BAL;1}' \
101: 'r;v;3;1;сезонные изменения в живой природе;' \
102: 'r;v;3;1;жизнь растений;' \
103: 'r;q;3;2;Строение растений изучает наука:' \
104: 'r;v;3;2;экология;' \
105: 'r;v;3;2;фенология;' \
106: 'r;v;3;2;ботаника;{BAL;1}' \
107: 'r;v;3;2;биология;' \
108: 'r;q;3;3;Цветковые растения относятся к:' \
109: 'r;v;3;3;царству грибов;' \
110: 'r;v;3;3;царству растений;{BAL;1}' \
111: 'r;v;3;3;доядерным живым организмам;' \
112: 'r;v;3;3;ядерным живым организмам;{BAL;1}' \
113: 'r;q;3;4;Организм растения состоит из органов:' \
114: 'r;v;3;4;корня и стебеля;' \
115: 'r;v;3;4;цветка и стебеля;' \
116: 'r;v;3;4;корня и побега;{BAL;1}' \
117: 'r;v;3;4;цветка и плодов;' \
118: 'r;q;3;5;Побегом называют:' \
119: 'r;v;3;5;часть стебеля;' \
120: 'r;v;3;5;почки и листья;' \
121: 'r;v;3;5;стебель с листьями и почками;{BAL;1}' \
122: 'r;v;3;5;цветок;' \
123: 'r;q;3;6;Цветок - это:' \
124: 'r;v;3;6;видоизмененный побег;{BAL;1}' \
125: 'r;v;3;6;яркий венчик;' \
126: 'r;v;3;6;околоцветник;' \
127: 'r;v;3;6;часть стебеля;' \
128: 'r;q;3;7;Главные части цветка:' \
129: 'r;v;3;7;лепестки и чашелистики;' \
130: 'r;v;3;7;пестик и тычинки;{BAL;1}' \
131: 'r;v;3;7;цветоножка и цветоложе;' \
132: 'r;v;3;7;столбик и рыльце;' \
133: 'r;q;3;8;Плод образуется из:' \
134: 'r;v;3;8;тычинки;' \
135: 'r;v;3;8;пестика;' \
136: 'r;v;3;8;завязи пестика;{BAL;1}' \
137: 'r;v;3;8;рыльца пестика;' \
138: 'r;q;3;9;Плодом нельзя назвать:' \
139: 'r;v;3;9;боб;' \
140: 'r;v;3;9;клубень картофеля;{BAL;1}' \
141: 'r;v;3;9;ягоду;' \
142: 'r;v;3;9;стручок;' \
143: 'r;q;3;10;Семя имеет:' \
144: 'r;v;3;10;только запас питательных веществ;' \
145: 'r;v;3;10;только зародыш;' \
146: 'r;v;3;10;зародыш с запасом питательных веществ;{BAL;1}' \
147: 'r;v;3;10;зародышевый корешок, стебелек и почечку с листочком;' \
148: 'r;q;3;11;Плоды и семена, имеющие пушистые волоски, распространяются:' \
149: 'r;v;3;11;водой;' \
150: 'r;v;3;11;животными;' \
151: 'r;v;3;11;ветром;{BAL;1}' \
152: 'r;v;3;11;саморазбрасыванием;' \
153: 'r;q;3;12;Травы отличаются от деревьев и кустарников тем, что имеют:' \
154: 'r;v;3;12;ствол и ветви;' \
155: 'r;v;3;12;несколько стволиков;' \
156: 'r;v;3;12;зеленые листья;' \
157: 'r;v;3;12;зеленые сочные стебли;{BAL;1}' \
158: 'r;r;3;BAL;0;8;ТЕСТ НЕ СДАН' \
159: 'r;r;3;BAL;9;12;ТЕСТ СДАН'  
160: возврат
161: